<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://www.ncbi.nlm.nih.gov/soap/eutils/efetch" elementFormDefault="qualified" targetNamespace="http://www.ncbi.nlm.nih.gov/soap/eutils/efetch" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ArticleIdType_pubmed">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute default="pubmed" name="IdType">
          <xs:simpleType>
            <xs:restriction base="xs:NMTOKEN">
              <xs:enumeration value="doi" />
              <xs:enumeration value="pii" />
              <xs:enumeration value="pmcpid" />
              <xs:enumeration value="pmpid" />
              <xs:enumeration value="sici" />
              <xs:enumeration value="pubmed" />
              <xs:enumeration value="medline" />
              <xs:enumeration value="pmcid" />
            </xs:restriction>
          </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
  <xs:complexType name="ArticleIdListType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" name="ArticleId" type="tns:ArticleIdType_pubmed" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="CitationSubset" type="xs:string" />
  <xs:complexType name="CommentInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="CommentOnType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="CommentsCorrectionsType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="CommentOn" type="tns:CommentOnType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="CommentIn" type="tns:CommentInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ErratumIn" type="tns:ErratumInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ErratumFor" type="tns:ErratumForType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RepublishedFrom" type="tns:RepublishedFromType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RepublishedIn" type="tns:RepublishedInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RetractionOf" type="tns:RetractionOfType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="RetractionIn" type="tns:RetractionInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="UpdateIn" type="tns:UpdateInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="UpdateOf" type="tns:UpdateOfType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SummaryForPatientsIn" type="tns:SummaryForPatientsInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="OriginalReportIn" type="tns:OriginalReportInType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ReprintOf" type="tns:ReprintOfType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ReprintIn" type="tns:ReprintInType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DeleteCitationType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="tns:PMID" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ErratumForType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ErratumInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GeneSymbol" type="xs:string" />
  <xs:complexType name="GeneSymbolListType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" ref="tns:GeneSymbol" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="HistoryType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" name="PubMedPubDate" type="tns:PubMedPubDateType" />
      <xs:any maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="MedlineCitationType">
    <xs:sequence>
      <xs:element minOccurs="0" ref="tns:NlmDcmsID" />
      <xs:element ref="tns:PMID" />
      <xs:element name="DateCreated" type="tns:DateCreatedType" />
      <xs:element minOccurs="0" name="DateCompleted" type="tns:DateCompletedType" />
      <xs:element minOccurs="0" name="DateRevised" type="tns:DateRevisedType" />
      <xs:element name="Article" type="tns:ArticleType" />
      <xs:element name="MedlineJournalInfo" type="tns:MedlineJournalInfoType" />
      <xs:element minOccurs="0" name="ChemicalList" type="tns:ChemicalListType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="tns:CitationSubset" />
      <xs:element minOccurs="0" name="CommentsCorrections" type="tns:CommentsCorrectionsType" />
      <xs:element minOccurs="0" name="GeneSymbolList" type="tns:GeneSymbolListType" />
      <xs:element minOccurs="0" name="MeshHeadingList" type="tns:MeshHeadingListType" />
      <xs:element minOccurs="0" ref="tns:NumberOfReferences" />
      <xs:element minOccurs="0" name="PersonalNameSubjectList" type="tns:PersonalNameSubjectListType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="OtherID" type="tns:OtherIDType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="OtherAbstract" type="tns:OtherAbstractType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="KeywordList" type="tns:KeywordListType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" ref="tns:SpaceFlightMission" />
      <xs:element minOccurs="0" name="InvestigatorList" type="tns:InvestigatorListType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="GeneralNote" type="tns:GeneralNoteType" />
    </xs:sequence>
    <xs:attribute default="NLM" name="Owner">
      <xs:simpleType>
        <xs:restriction base="xs:NMTOKEN">
          <xs:enumeration value="NLM" />
          <xs:enumeration value="NASA" />
          <xs:enumeration value="PIP" />
          <xs:enumeration value="KIE" />
          <xs:enumeration value="HSR" />
          <xs:enumeration value="HMD" />
          <xs:enumeration value="SIS" />
          <xs:enumeration value="NOTNLM" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="Status" type="xs:string" />
  </xs:complexType>
  <xs:element name="MedlineCitationSet">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="MedlineCitation" type="tns:MedlineCitationType" />
        <xs:element minOccurs="0" name="DeleteCitation" type="tns:DeleteCitationType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="NCBIArticleType">
    <xs:sequence>
      <xs:element ref="tns:PMID" />
      <xs:element name="Article" type="tns:ArticleType" />
      <xs:element minOccurs="0" name="MedlineJournalInfo" type="tns:MedlineJournalInfoType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="NlmDcmsID" type="xs:string" />
  <xs:element name="Note" type="xs:string" />
  <xs:element name="NumberOfReferences" type="xs:string" />
  <xs:complexType name="OriginalReportInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PubMedPubDateType">
    <xs:sequence>
      <xs:element ref="tns:Year" />
      <xs:element ref="tns:Month" />
      <xs:element ref="tns:Day" />
      <xs:sequence minOccurs="0">
        <xs:element ref="tns:Hour" />
        <xs:sequence minOccurs="0">
          <xs:element ref="tns:Minute" />
          <xs:element minOccurs="0" ref="tns:Second" />
        </xs:sequence>
      </xs:sequence>
    </xs:sequence>
    <xs:attribute name="PubStatus" use="required">
      <xs:simpleType>
        <xs:restriction base="xs:NMTOKEN">
          <xs:enumeration value="received" />
          <xs:enumeration value="accepted" />
          <xs:enumeration value="epublish" />
          <xs:enumeration value="ppublish" />
          <xs:enumeration value="revised" />
          <xs:enumeration value="aheadofprint" />
          <xs:enumeration value="retracted" />
          <xs:enumeration value="pmc" />
          <xs:enumeration value="pmcr" />
          <xs:enumeration value="pubmed" />
          <xs:enumeration value="pubmedr" />
          <xs:enumeration value="premedline" />
          <xs:enumeration value="medline" />
          <xs:enumeration value="medliner" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>
  <xs:element name="PublicationStatus" type="xs:string" />
  <xs:complexType name="PubmedArticleType">
    <xs:sequence>
      <xs:element name="NCBIArticle" type="tns:NCBIArticleType" />
      <xs:element name="MedlineCitation" type="tns:MedlineCitationType" />
      <xs:element minOccurs="0" name="PubmedData" type="tns:PubmedDataType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="PubmedArticleSet">
    <xs:complexType>
      <xs:sequence maxOccurs="unbounded">
        <xs:element name="PubmedArticle" type="tns:PubmedArticleType" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="PubmedDataType">
    <xs:sequence>
      <xs:any minOccurs="0" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="History" type="tns:HistoryType" />
      <xs:element ref="tns:PublicationStatus" />
      <xs:element name="ArticleIdList" type="tns:ArticleIdListType" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="RefSource" type="xs:string" />
  <xs:complexType name="ReprintInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ReprintOfType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="RepublishedFromType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="RepublishedInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="RetractionInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="RetractionOfType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SummaryForPatientsInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="URL">
    <xs:complexType>
      <xs:simpleContent>
        <xs:extension base="xs:string">
          <xs:attribute name="lang">
            <xs:simpleType>
              <xs:restriction base="xs:NMTOKEN">
                <xs:enumeration value="AF" />
                <xs:enumeration value="AR" />
                <xs:enumeration value="AZ" />
                <xs:enumeration value="BG" />
                <xs:enumeration value="CS" />
                <xs:enumeration value="DA" />
                <xs:enumeration value="DE" />
                <xs:enumeration value="EN" />
                <xs:enumeration value="EL" />
                <xs:enumeration value="ES" />
                <xs:enumeration value="FA" />
                <xs:enumeration value="FI" />
                <xs:enumeration value="FR" />
                <xs:enumeration value="HE" />
                <xs:enumeration value="HU" />
                <xs:enumeration value="HY" />
                <xs:enumeration value="IN" />
                <xs:enumeration value="IS" />
                <xs:enumeration value="IT" />
                <xs:enumeration value="IW" />
                <xs:enumeration value="JA" />
                <xs:enumeration value="KA" />
                <xs:enumeration value="KO" />
                <xs:enumeration value="LT" />
                <xs:enumeration value="MK" />
                <xs:enumeration value="ML" />
                <xs:enumeration value="NL" />
                <xs:enumeration value="NO" />
                <xs:enumeration value="PL" />
                <xs:enumeration value="PT" />
                <xs:enumeration value="PS" />
                <xs:enumeration value="RO" />
                <xs:enumeration value="RU" />
                <xs:enumeration value="SL" />
                <xs:enumeration value="SK" />
                <xs:enumeration value="SQ" />
                <xs:enumeration value="SR" />
                <xs:enumeration value="SV" />
                <xs:enumeration value="SW" />
                <xs:enumeration value="TH" />
                <xs:enumeration value="TR" />
                <xs:enumeration value="UK" />
                <xs:enumeration value="VI" />
                <xs:enumeration value="ZH" />
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
          <xs:attribute name="Type">
            <xs:simpleType>
              <xs:restriction base="xs:NMTOKEN">
                <xs:enumeration value="FullText" />
                <xs:enumeration value="Summary" />
                <xs:enumeration value="fulltext" />
                <xs:enumeration value="summary" />
              </xs:restriction>
            </xs:simpleType>
          </xs:attribute>
        </xs:extension>
      </xs:simpleContent>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="UpdateInType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="UpdateOfType">
    <xs:sequence>
      <xs:element ref="tns:RefSource" />
      <xs:element minOccurs="0" ref="tns:PMID" />
      <xs:element minOccurs="0" ref="tns:Note" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PubmedArticleSetType">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="PubmedArticle" type="tns:PubmedArticleType" />
    </xs:sequence>
  </xs:complexType>
</xs:schema>